-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add fine-grained features to control the compilation #189
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wow, that's a monumental contribution. Thanks!
I left some minor comments, feel free to ignore the suggestion about using cfg-if
.
There's however another thing I would like to see: can you update the inline documentation to explain the different features and what their purpose is? I imagine something like tokio
documentation does here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM thanks, just a merge conflict to resolve along with the discussion with @flavio
5a6a26f
to
eba6b95
Compare
Some dependencies are only used in a part of the lib. New features are brought for users to specify to reduce useless dependencies. Signed-off-by: Xynnn007 <xynnn@linux.alibaba.com>
To run the examples correctly, the simplest way is to enable all the features. Signed-off-by: Xynnn007 <xynnn@linux.alibaba.com>
Signed-off-by: Xynnn007 <xynnn@linux.alibaba.com>
eba6b95
to
a84bbdd
Compare
The clippy errors seem not related to this PR. Let me fix them in another PR first, although a great headache :-( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot for having made the changes I request. This is a really cool PR 👏
Summary
This pr tries to divide different modules (like
fulcio
,rekor
andcosign
) into different features. The dependencies of the unenabled features will not be compiled to save space and time.Release Note
New features are introduced, including
full-native-tls
,full-rustls-tls
: full stackfulcio-native-tls
,fulcio-rustls-tls
: fulciorekor-native-tls
,rekor-rustls-tls
: rekorcosign-native-tls
,cosign-rustls-tls
: cosignmock-client-native-tls
,mock-client-rustls-tls
: mock client for testcached-client
: whether usescached-client
optionDocumentation
Close #187